typedef enum {
    kCCProgressTimerTypeRadial,
    kCCProgressTimerTypeBar,
} CCProgressTimerType;

class CCProgressTimer : public CCNode
{
    CCProgressTimerType getType(void);

    float getPercentage(void);

    CCSprite* getSprite(void) { return m_pSprite; }

    void setPercentage(float fPercentage);
    void setSprite(CCSprite *pSprite);
    void setType(CCProgressTimerType type);
    void setReverseProgress(bool reverse);
    void setAnchorPoint(CCPoint anchorPoint);

    void setColor(const ccColor3B& color);
    const ccColor3B& getColor(void);
    GLubyte getOpacity(void);
    void setOpacity(GLubyte opacity);
    void setOpacityModifyRGB(bool bValue);
    bool isOpacityModifyRGB(void);

    static CCProgressTimer* create(CCSprite* sp);

    CCPoint getMidpoint();
    void setMidpoint(CCPoint pt);
    CCPoint getBarChangeRate();
    void setBarChangeRate(CCPoint rate);

    bool isReverseDirection();
    void setReverseDirection(bool bReverseDir);
};
